A content server may provide data to a requesting client, e.g. a web browser, via one or more data retrieval devices, e.g., a proxy server and/or a portal. The data retrieval device may be provided, e.g., to filter data sent to the client, perform operations upon data sent to the client, cache data sent to the client for subsequent requests, etc.
A client may request data from the data retrieval device. The data retrieval device may forward the request to the content server. Alternatively, the data retrieval device may check whether the requested data had been stored in the data retrieval device's local memory, cache, in response to a previous request for the data, e.g. from the same or a different requesting client. If the requested data had been previously cached, the data retrieval device may return to the client a copy of the cached data, instead of retrieving the data from the content server.
The content server may be initialized to operate alternatively in a stateless mode or a stateful mode. In a stateless mode, each request to the content server for data is treated individually. After initialization in the stateless mode, the content server can respond to an independent request for data that is disassociated from any group of data of a data retrieval transaction. In a stateful mode, multiple requests for data are grouped together as part of a single transaction. After initialization in the stateful mode, the content server may not be able to respond to an independent data request, where the data request is disassociated from a transaction. If the content server receives an independent data request in the stateful mode, the content server may return an error message.
While in the stateful mode, a client may terminate data retrieval before the data retrieval device retrieves and stores in cache all associated data of a transaction. When the data retrieval device subsequently receives a request for data of the same transaction, the data retrieval device will initially determine that the cache contains the data since a portion of the data of the transaction is stored in cache. If the requested data is of the portion of the transaction not previously received by the data retrieval device, the data retrieval device will be unable to return the requested data from the cache. Since, only a portion of the transaction data is missing, the data retrieval device will consequently request from the content server the missing data as an independent data request disassociated from the transaction. Since the content server is initialized in the stateful mode for the transaction data, the content server will be unable to return the requested data disassociated from a return of the rest of the transaction data, and will return an error message. The client's request will therefore not be fulfilled.
Accordingly there is a need in the art for a system and/or method to fulfill a request for data of a transaction in the stateful mode where a previous transmission of data of the transaction had been prematurely terminated.